add graph500 benchmark - #1754
Conversation
There was a problem hiding this comment.
Code Review
This pull request adds a new application definition for the Graph500 benchmark, setting up various workloads, variables, figures of merit (FOMs), and success criteria. The feedback highlights critical issues in the regular expressions for both the 'Harmonic Mean TEPS' figure of merit and the success criteria, where an incorrect literal exclamation mark ('!') is included, which would cause parsing and validation to fail against standard Graph500 output.
cf8c5b2 to
40ab12e
Compare
|
/gcbrun |
|
/gcbrun |
|
@juntangc as you may have heard we have transitioned our repo to HPSF and now required DCO enforcement. Please sign of your commits when you get a chance (https://github.com/apps/dco) |
Signed-off-by: Jun Tang <juntangc@google.com>
40ab12e to
b12d920
Compare
@rfbgo I have added the sign off. |
Awesome, thanks @juntangc. We will try get this reviewed in a timely manner! (DCO looks good!) |
|
/gcbrun |
Description
This PR adds the Graph500 benchmark application to Ramble (
var/ramble/repos/builtin/applications/graph500/application.py).Graph500 is the de-facto HPC benchmark for data-intensive, memory-bound computing and irregular graph traversal. It evaluates large-scale Breadth-First Search (BFS) and Single-Source Shortest Path (SSSP) on Kronecker power-law graphs, stressing memory bandwidth, latency, and all-to-all communication patterns. It also serves as an important proxy workload for Electronic Design Automation (EDA) and graph analytics.
Features & Capabilities
bfs: Standard Breadth-First Search reference kernel with customizablescaleandedge_factor.bfs_sssp: Combined BFS and Single-Source Shortest Path kernels.scale_16throughscale_30(graph500@3.0.0 +procs_not_power_of_two).Verification & Testing
c3-standard-176instances) using Intel OneAPI MPI (intel-oneapi-mpi@2021.17.2) and GCC 14/15 across Scales 21, 24, 26, and 27.ramble analyze.